using System;
using Sinacor.Infra.Common;
using System.Collections.Generic;
using Sinacor.Servico.Bovespa.Corretagem.BusinessEntity;
using Sinacor.Servico.Bovespa.Corretagem.Service.DataContract.Response;

namespace Sinacor.Servico.Bovespa.Corretagem.Service.ServiceImplementation.Translator
{
    /// <summary>
    /// Classe tradutora entre objetos TipoDescontoDiferenciado e TipoDescontoDiferenciado
    /// </summary>
    public class TipoDescontoDiferenciadoToTipoDescontoDiferenciado : BaseTranslator<Sinacor.Servico.Bovespa.Corretagem.Service.DataContract.Response.TipoDescontoDiferenciadoResponse, Sinacor.Servico.Bovespa.Corretagem.BusinessEntity.TipoDescontoDiferenciado, List<Sinacor.Servico.Bovespa.Corretagem.Service.DataContract.Response.TipoDescontoDiferenciadoResponse>, List<Sinacor.Servico.Bovespa.Corretagem.BusinessEntity.TipoDescontoDiferenciado>>
    {
        #region Metodos
        /// <summary>
        /// Translator
        /// </summary>
        /// <param name="from"></param>
        /// <returns></returns>
        public override Sinacor.Servico.Bovespa.Corretagem.Service.DataContract.Response.TipoDescontoDiferenciadoResponse Translate(Sinacor.Servico.Bovespa.Corretagem.BusinessEntity.TipoDescontoDiferenciado from)
        {
            Sinacor.Servico.Bovespa.Corretagem.Service.DataContract.Response.TipoDescontoDiferenciadoResponse to = new Sinacor.Servico.Bovespa.Corretagem.Service.DataContract.Response.TipoDescontoDiferenciadoResponse();
            to.Codigo = (from.Codigo.HasValue ? from.Codigo.Value : 0);
            to.Descricao = from.Descricao;
            to.Obrigatorio = (from.Obrigatorio.HasValue ? from.Obrigatorio.Value : false);

            return to;
        }
        #endregion
    }
}

